home *** CD-ROM | disk | FTP | other *** search
/ Enter 2002 August / EnterCD 8_2002.iso / Internet / Adobe GoLive 6.0 / data1.cab / PF_AppDir_Mod_JScript_ActionScripts / State.scpt < prev   
Encoding:
Text File  |  2002-03-28  |  2.2 KB  |  73 lines

  1. CSStateArray = new Object;
  2. CSCookieArray = new Object;
  3. CSCookieValArray = new Object;
  4. function CSWriteCookie(action) {
  5.     var name   = "DFT" + action[1];
  6.     var hrs    = action[2];
  7.     var path   = action[3];
  8.     var domain = action[4];
  9.     var secure = action[5];    
  10.     var exp    = new Date((new Date()).getTime() + hrs * 3600000);    
  11.     var cookieVal = "";
  12.     for(var prop in CSCookieArray) {
  13.         if(("DFT" + CSCookieArray[prop]) == name) {
  14.             if(cookieVal != "") cookieVal += "&";
  15.             cookieVal += prop + ":" + escape(CSStateArray[prop]);
  16.         }
  17.     }
  18.     if(hrs != 0)
  19.         cookieVal += "; expires=" + exp.toGMTString();
  20.     if(path != "")
  21.         cookieVal += "; path=" + path;
  22.     if(domain != "")
  23.         cookieVal += "; domain=" + domain;
  24.     if(secure == true)
  25.         cookieVal += "; secure";
  26.     document.cookie = name + '=' + cookieVal;
  27. }
  28. function CSReadCookie(action) {
  29.     var name    = "DFT" + action[1];
  30.     var cookies = document.cookie;
  31.     if(cookies == "") return;
  32.     var start = cookies.indexOf(name);
  33.     if(start == -1) return;
  34.     start += name.length + 1;
  35.     var end = cookies.indexOf(";", start);
  36.     if(end == -1) end = cookies.length;
  37.     var cookieVal = cookies.substring(start, end);
  38.     var arr = cookieVal.split('&');
  39.     for(var i = 0; i < arr.length; i++) {
  40.         var a = arr[i].split(':');
  41.         CSStateArray[a[0]] = unescape(a[1]);
  42.     }    
  43. }
  44. function CSDefineState(action) {
  45.     CSCookieArray[action[1]] = action[3]; 
  46. }
  47. function CSSetState(action) {
  48.     CSStateArray[action[1]] = action[2];
  49. }
  50. function CSInitState(action) {
  51.     if(typeof(CSStateArray[action[1]]) == "undefined")
  52.         CSStateArray[action[1]] = action[2];
  53. }
  54. function CSCheckState(action) {
  55.     var obj1 = CSStateArray[action[1]];
  56.     var obj2 = action[2];
  57.     if(typeof(obj1) == "object") {
  58.         for(var i=0;i<obj1.length;i++) {
  59.             if(obj1[i] != obj2[i])
  60.                 return false;
  61.             }
  62.         return true;
  63.         }
  64.     var res;
  65.     var op = action[3];
  66.              if(op == "==") res = (CSStateArray[action[1]] == action[2]);    
  67.         else if(op == "!=") res = (CSStateArray[action[1]] != action[2]);    
  68.         else if(op == ">" ) res = (CSStateArray[action[1]] >  action[2]);    
  69.         else if(op == ">=") res = (CSStateArray[action[1]] >= action[2]);    
  70.         else if(op == "<" ) res = (CSStateArray[action[1]] <  action[2]);    
  71.         else if(op == "<=") res = (CSStateArray[action[1]] <= action[2]);    
  72.     return res;
  73. }